using Microsoft.Xna.Framework;

namespace Xfinity.Entities
{
    public class GravitationalAttractor : LogicalEntity
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="GravitationalAttractor"/> class.
        /// </summary>
        /// <param name="position">The position.</param>
        /// <param name="radius">The radius.</param>
        /// <param name="mass">The mass.</param>
        /// <param name="name">The name.</param>
        /// <param name="game">The game.</param>
        public GravitationalAttractor(Vector3 position, float radius, float mass, string name, Game game)
            : base(name, game)
        {
            sphere = new BoundingSphere(position, radius);
            this.mass = mass;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="GravitationalAttractor"/> class.
        /// </summary>
        /// <param name="sphere">The sphere.</param>
        /// <param name="mass">The mass.</param>
        /// <param name="name">The name.</param>
        /// <param name="game">The game.</param>
        public GravitationalAttractor(BoundingSphere sphere, float mass, string name, Game game)
            : base(name, game)
        {
            this.sphere = sphere;
            this.mass = mass;
        }

        private BoundingSphere sphere;

        /// <summary>
        /// Gets the bounding sphere.
        /// </summary>
        /// <value>The sphere.</value>
        public BoundingSphere Sphere
        {
            get { return sphere; }
        }
        private float mass;

        /// <summary>
        /// Gets or sets the mass.
        /// </summary>
        /// <value>The mass.</value>
        public float Mass
        {
            get { return mass; }
            set { mass = value; }
        }

    }
}
